<template>
  <div class="recipe">
    <p>设计图基础模板（不要int data标签）<textarea name="" id="" cols="30" rows="10" v-model="baseData"></textarea></p>
    <p>设计图公用材料(用tab隔开，首尾不要出现tab)<input type="text" v-model="publicMaterial"></p>
    <p>设计图基础物品（用tab隔开每个物品，首尾不要出现tab）<input type="text" v-model="baseMaterial"></p>
    <p>设计图基础物品数量（用tab隔开每个数量，必须与上面的顺序保持一致，首尾不要出现tab）<input type="text" v-model="baseNum"></p>
    <p>设计图生成物品（用tab隔开每个代码，必须与上面的顺序保持一致，首尾不要出现tab）<input type="text" v-model="resultMaterial"></p>
    <p>设计图生成物品数量（用tab隔开每个代码，必须与上面的顺序保持一致，首尾不要出现tab）<input type="text" v-model="resultNum"></p>
    <p>设计图内物品总数<input type="number" v-model="allNum"></p>
    <Button @click="generate">生成</Button>
    <div v-for="i in result.length">
      <textarea name="" cols="30" rows="10" v-model="result[i - 1]"></textarea>
    </div>
  </div>
</template>

<script>
export default {
  name: "recipe",
  data(){
    return{
      baseData: '#PVF_File\n' +
          '\n' +
          '[name]\n' +
          '\t`鳴風之舞指環  設計圖`\n' +
          '\n' +
          '[grade]\n' +
          '\t84\n' +
          '\n' +
          '[rarity]\n' +
          '\t3\n' +
          '\n' +
          '[icon mark]\n' +
          '\t`Item/IconMark.img`\t66\n' +
          '\n' +
          '[usable job]\n' +
          '\t`[all]`\n' +
          '[/usable job]\n' +
          '\n' +
          '[attach type]\n' +
          '\t`[free]`\n' +
          '\n' +
          '[minimum level]\n' +
          '\t84\n' +
          '\n' +
          '[weight]\n' +
          '\t10\n' +
          '\n' +
          '[price]\n' +
          '\t5000000\n' +
          '\n' +
          '[icon]\n' +
          '\t`Item/stackable/recipe.img`\t27\n' +
          '\n' +
          '[field image]\n' +
          '\t`Item/FieldImage.img`\t28\n' +
          '\n' +
          '[stackable type]\n' +
          '\t`[recipe]`\t1\n' +
          '\n' +
          '[move wav]\n' +
          '\t`PAPER_TOUCH`\n' +
          '\n' +
          '[string data]\n' +
          '\t`[weaving]`\n' +
          '[/string data]\n' +
          '\n' +
          '[monster card id]\n' +
          '\t0\n' +
          '\n' +
          '[minimum itemmaking level]\n' +
          '\t`ring`\t8\n',
      publicMaterial: '10000224\t5\t3167\t750\t3263\t50',
      baseMaterial: '10000205\t10000206',
      baseNum: '1\t1',
      resultMaterial: '10000207\t10000208',
      resultNum: '1\t1',
      allNum: 4,
      result: [],
    }
  },
  methods: {
    generate(){
      //验证空值
      if(!this.examine()) return
      //基础材料转数组
      let baseArr = this.baseMaterial.split('\t')
      //基础材料数量加入数组中字符串
      let baseNumArr = this.baseNum.split('\t')
      for(let i in baseArr){
          baseArr[i] = baseArr[i] + '\t' + baseNumArr[i]
      }

      //生成材料转数组
      let resultArr = this.resultMaterial.split('\t')
      //生成材料数量加入数组中字符串
      let resultNumArr = this.baseNum.split('\t')
      for(let i in resultArr){
        resultArr[i] = resultArr[i] + '\t' + resultNumArr[i]
      }
      //合并单文件的字符串为数组，加入到result数组中
      let singleArr = []
      for(let i = 0; i < baseArr.length; i++){
        let temp = '\n[int data]\n' + this.allNum + '\t' + baseArr[i] + '\t' + this.publicMaterial + '\t1\t' + resultArr[i] + '\t0\n' + '[/int data]'
            this.result.push(this.baseData + temp)
      }
    },
    examine() {
      //判断设计图主体是否为空
      if(this.baseData === '' || !this.baseData){
        this.$Message.error({ content: '设计图基础模板不能为空' })
        return false
      }
      //判断设计图公用材料是否为空
      if(this.publicMaterial === '' || !this.publicMaterial){
        this.$Message.error({ content: '设计图公用材料不能为空' })
        return false
      }
      //判断设计图基础物品是否为空
      if(this.baseMaterial === '' || !this.baseMaterial){
        this.$Message.error({ content: '设计图基础物品不能为空' })
        return false
      }
      //判断设计图基础物品数量是否为空
      if(this.baseMaterial === '' || !this.baseMaterial){
        this.$Message.error({ content: '设计图基础物品数量不能为空' })
        return false
      }
      //判断设计图生成物品是否为空
      if(this.baseMaterial === '' || !this.resultMaterial){
        this.$Message.error({ content: '设计图基础物品不能为空' })
        return false
      }
      //判断设计图生成物品数量是否为空
      if(this.baseMaterial === '' || !this.resultMaterial){
        this.$Message.error({ content: '设计图基础物品数量不能为空' })
        return false
      }
      //判断设计图内物品总数是否为空
      if(this.baseMaterial === '' || !this.resultMaterial){
        this.$Message.error({ content: '设计图基础物品数量不能为空' })
        return false
      }
      return true
    }
  }
}
</script>

<style scoped>

</style>
